package org.ajax.test;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import org.ajax.entity.Student;

import java.util.Date;

/**
 * 把 Java 对象序列化 JSON 字符串，并设置日期时间格式
 *
 * @author ZQX
 * @date 2024-11-19
 */
public class GsonTest02 {

    private static void testToJson01() {
        // 第一：实例化 Java 对象
        Student zs = new Student("张三",18,99,new Date()) ;

        // 第二：实例化 Gson 对象
        Gson gson = new Gson() ;

        // 第三：序列化
        String json = gson.toJson(zs);

        // 第四：打印输出，查看结果
        System.out.println(json);
    }

    private static void testToJson02() {
        // 第一：实例化 Java 对象
        Student zs = new Student("张三",18,99,new Date()) ;

        // 第二：实例化 Gson 对象
        // Gson gson = new Gson() ;

        Gson gson = new GsonBuilder()
                .setPrettyPrinting()
                .setDateFormat("yyyy-MM-dd hh:mm:ss.SSS").create();

        // 第三：序列化
        String json = gson.toJson(zs);

        // 第四：打印输出，查看结果
        System.out.println(json);
    }

    public static void main(String[] args) {
        testToJson02() ;
    }
}
